1. /* sninfo.cpp by K.Tsuru */
  2. // function ID = 010
  3. /******************************
  4. Provides SNumber informations.
  5. This is not a member function.
  6. Remade iostream version since version 2.30
  7. *******************************/
  8. #ifndef SN_H
  9. #include "sn.h"
  10. #endif
  11. void FFTInfo(ostream& os){ // default os = cout
  12. SLong sl;
  13. SInteger si;
  14. os << "<<< FFT information >>>" << endl;
  15. os << "defaultFFTMinSize = " << defaultFFTMinSize << endl;
  16. os << "fftMaxSize = " << sl.FFTMaxArraySize() << "(DRADIX) and " << si.FFTMaxArraySize() << "(BRADIX)" << endl;
  17. os << "MFFTMinSize() = " << SNManager::MFFTMinSize();
  18. os << ", FFTUsedTimes() = " << SNManager::FFTUsedTimes() << endl;
  19. string on_off = SNManager::FFTVerify() ? "ON." : "OFF.";
  20. os << "FFTVerify is " << on_off << endl;
  21. os << "FFTWorkSize is " << FFTWorkSize() << "." << endl;
  22. os << "FFT used memory is " << FFTWorkSize()*sizeof(fftType) << "(bytes)." << endl;
  23. string yes_no = UsesFFTSineTable ? "Yes" : "No";
  24. os << "Uses FFTSineTable : " << yes_no << endl;
  25. yes_no = sl.UsesKaratsubaMult() ? "Yes" : "No";
  26. os << "Uses Karatsuba's multiplication : " << yes_no << endl;
  27. os << "Karatsuba's multiplication used times = " << SNManager::KHHMultUsedTimes() << "." << endl;
  28. yes_no = Uses_long_double_FFT ? "Yes" : "No";
  29. os << "Uses \"long double\" in FFT : " << yes_no << endl;
  30. }
  31. void SNInfo(ostream& os){
  32. SNManager::Version();
  33. os << "<<< SNumber information >>>" << endl;
  34. os << "Your compiler is " << SystemBit() << " bit." << endl;
  35. os << "SNObjects() = " << SNManager::SNObjects() << endl;
  36. os << "radix = "<< DRADIX << " / " << BRADIX << endl;
  37. string on_off = SNManager::Verify() ? "ON." : "OFF.";
  38. os << "Verify is " << on_off << endl;
  39. os << "------- Size information ------------" << endl;
  40. os << "maxSizeOfMemoryBlock = " << maxSizeOfMemoryBlock << "(bytes), ";
  41. os << "maxArraySize = " << SNManager::MaxArraySize();
  42. os << ", minArraySize = " << minArraySize << endl;
  43. os << "defaultEffFig = " << defaultEffFig << endl;
  44. os << "----- Real number information -----" << endl;
  45. os << "EffFigures() = " << SNManager::EffFigures();
  46. os << ", Hidden() = " << SNManager::Hidden() << endl;
  47. os << "Maximum size of SDecimal = " << SNManager::SNMaxSize(SNManager::BIN_DEC) << endl;
  48. os << "Maximum value of exponent = " << DRADIX_EXP_MAX << "(radix = " << DRADIX << ")" << endl<< endl;
  49. FFTInfo();
  50. }

sninfo.cpp : last modifiled at 2017/09/29 11:48:11(2,413 bytes)
created at 2016/04/11 11:36:47
The creation time of this html file is 2017/10/27 10:59:17 (Fri Oct 27 10:59:17 2017).